home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fritz: All Fritz
/
All Fritz.zip
/
All Fritz
/
FILES
/
GAME_CGA
/
ARCHERY.LZH
/
SNAKE.DOC
< prev
Wrap
Text File
|
1987-08-02
|
22KB
|
489 lines
SneeSnoo Snake V3.1 Documentation, (C) 1987 Bruce L. Rosenberg
INTRODUCTION
Version 3.1 of SNEESNOO SNAKE TM is significantly improved over
earlier versions. One of the driving forces behind this game has
been to produce a challenging, tracking type game which did not
involve violent, shoot-the-enemy mentality. It is a subtle game
which encourages clever strategies as well as perceptual-motor
speed and accuracy. Suggestions and comments from a number of
enthusiastic SneeSnoo Snake Snatchers have led to this improved
version. Thanks All for your valuable input.
If you become a registered user, you will receive the latest
version of the game along with the TurboPascal (TM Borland
International) source code. You will be also informed of the
$10,000.00 International SneeSnoo Snake Contest (see CONTEST
later) when it is scheduled. A number of improvements to Snake
are under development, such as faster key action, joy stick and
mouse support, direct writing to screen memory and more.
Although this game is copyrighted, permission is given for
noncommercial use and distribution. It is a user-supported
enterprise.
STARTING THE GAME OF SNEESNOO SNAKE TM
When the game is invoked by keying SNAKE at the DOS prompt,
options are presented for toggling sound on or off and for
resetting the score file, snake.dat. If you say you want to
reset, the program confirms your decision before destroying
history. If the file snake.dat does not exist, the program is
smart enough to detect that fact and create a "tabla rasa" for
the scores. It now automatically detects and sets itself up for
use on monochrome or color graphics adapters. After you setup
the options you are taken to the beginning screen. After
pressing any key, you then go to the main menu. There are 7
options as shown below:
MAIN MENU
1. BEGINNING SCREEN Takes you back to the intro screen.
2. GAME INSTRUCTIONS Rules of the game, what keys to use.
3. FURTHER INFORMATION Commercial info, prices, whom to
contact.
4. PLAY GAME Just what it says; Snatch the SneeSnoo Snake!
5. CHANGE OPTIONS Repeat the beginning option setting.
6. DISPLAY SCORES View the top 20 scores and names.
7. EXIT TO DOS Quit the game.
1
SneeSnoo Snake V3.1 Documentation, (C) 1987 Bruce L. Rosenberg
The game is a challenge on several levels of tactics and
strategy. The highest official score that has been obtained on
version 3.1 is 25.00 (as of 7/1/87). See if you can top that.
BRIEF INSTRUCTIONS
You are a herpetologist for Megalop Zoo. Your assignment is to
go to the Foetid Forest of Amazonia and catch rare SneeSnoo
Snakes. The SneeSnoo's body is green and its head is a happy
face. Snoo's head is magenta & it's poisonous, Snee's head is
red, it's not. You control movement of a bag, which is a
rectangle. You can also close the bag. SneeSnoo can enter from
any side. Closing bag with the RED head inside , gets 1 snake,
or 4 snakes if MAGENTA. If outside bag, but within striking
distance, it bites and you drop 1 snake, 2 if venomous. Five
venomous bites & you DIE!! Your score is the total number of
snakes bagged per minute. You have a time limit. Time in
seconds remaining is shown in the lower right. Good Luck!
CONTROL KEYS (Make sure NumLock is off!)
Up Arrow moves bag up. Home moves bag up and left.
Down Arrow moves bag down. PgUp moves bag up and right.
Right Arrow moves bag right. PgDn moves bag down and right.
Left Arrow moves bag left. End moves bag down and left.
F1 aborts to DOS during play. Spacebar closes bag.
OPERATION OF THE GAME SPEED CHANGING ALGORITHM
When you select PLAY GAME, the initial speed of the game is set
to moderately fast (DELAY = 100). DELAY controls the speed of
the game; it uses TurboPascal's delay function, in which a value
of 100 is approximately equal to 100 milliseconds or about one-
tenth of a second. As you play the game, the current operating
value of DELAY is displayed in the score bar at the bottom of the
screen. The higher the DELAY, the slower the speed and vice
versa. If you are skilled, SNAKE31 automatically speeds up
(DELAY decreases). If you are a beginner, it slows down (DELAY
increases) to a level where you can comfortably play it. It
speeds up at a faster rate than it slows down, so it pushes each
player to his or her own skill limit.
There are two rates of speed change. The switch over occurs at
DELAY = 100. Above 100 the rate of change is rapid, below 100 it
is slower. A delay of 80 is difficult, 70 is very difficult,
and 60 is nearly impossible. The program's decision to change
DELAY hinges on the number of snakes you bag in a 3 second time
period. If above the criterion, the speed increases, if below
the criterion the speed decreases and if equal to the criterion
it does not change. This adaptive action is a kind of machine
intelligence which keeps the you working near your upper tracking
speed limit.
2
SneeSnoo Snake V3.1 Documentation, (C) 1987 Bruce L. Rosenberg
HUMAN FACTORS THEORY OF THE GAME
The game involves an adaptive, two-dimensional pursuit tracking
task. The player tries to follow a randomly moving target with
a reticle (bag) and when the target is within the reticle press a
button to capture it. SNAKE31 is much more than a simple pursuit
tracking task such as steering a car along a highway. And the
rates of motion of the target can exceed the bandwidth of the
human controller.
The upper limit of human eye-hand tracking closed-loop frequency
response is 0.6 Hz or 1.7 seconds per cycle. This is relatively
slow. It is much slower than the maximum key tapping rate of one
finger, which is about 5 times per second (5 Hz) or 0.2 seconds
per cycle. For the engineers in the crowd, a typical
continuous human operator mathematical transfer function is:
K * (exp ( -0.17S ) / ( 0.63S + 1 ));
where S is the LaPlace operator.
Such an equation can be used to simulate how a human might
control a dynamic system, like flying an airplane or steering a
car. But humans behave much more cleverly than the above
equation. They can learn the periodicities in the control task
and anticipate the next motion which might occur. It is
possible to anticipate SneeSnoo Snake's motion.
SneeSnoo can move much faster than the human can follow it, as
can be seen when the snake does its dance (DELAY = 10). Thus,
its speed must be reduced for a reasonably difficult tracking
task.
The typical eye-hand simple reaction time of the human is 180
milliseconds or about two-tenths of a second. By knowing the
humans' maximum tapping rate, visual reaction time, the size of
the bag in number of snake increments, the increment rate
(1/DELAY), and the random snake-motion algorithm, and the ability
of the human to track the snake's periodicities, a creative
SneeSnoo Snake Snatcher Programmer might be able to figure out a
computer program to simulate a human playing the game!
THE ZEN OF SNEESNOO SNAKE SNATCHING
SneeSnoo Snake embodies the principle of duality in a way
analogous to the YinYang of Eastern philosophy. Snoo and Yin are
the dark side of nature, whereas Snee and Yang are the light
side. The same snake manifests both Snee and Snoo just as each
person manifests both Yang and Yin attributes. As you become
more skilled in this game you may find that, there is no longer a
separate keyboard, screen, game, and person playing it; but only
oneness, a magical whole, a transcendent dance of nature and
technology. Mentally healthful, this arcade type video game
eschews war-minded shoot-em-up atavism. Remember, use the Force!
3
SneeSnoo Snake V3.1 Documentation, (C) 1987 Bruce L. Rosenberg
SNEESNOO SNAKE SNATCHING HINTS
Location on the screen - The easiest locations are the corners.
The hardest location is the center of the screen.
Movement of the snake - The snake moves 5 increments in one
direction before it changes direction. The horizontal change in
direction does not occur at the same time as the vertical change
in direction. The total length of the snake is 13 characters and
there are 3 possible changes in direction along this length.
Note that it usually moves diagonally, rarely just vertically or
horizontally.
Size and shape of the bag - The bag is 6 horizontal spaces wide
and 4 vertical spaces high. You have a better chance of snagging
it during horizontal motion.
Movement of the bag - Each actuation of the horizontal cursor
keys moves the bag 6 spaces and the vertical keys move it 3
spaces. The diagonal keys move that number of spaces
horizontally and vertically at the same time. So, you cover more
distance using the diagonal (corner) cursor keys.
Venomous vs. nonvenomous snakes - You get 1 snake credit for
bagging a nonvenomous snake; but credit for 4 snakes if it's
venomous. So, for high score, you should go for the venomous
snakes; but you risk dying. If you get bitten by a nonvenomous
Snee Snake, you drop one snake. If it's a venomous Snoo, you
drop two snakes and after 5 bites from the Snoo Snake you die and
the game is over. When you die, your score is not recorded. The
distance the SneeSnoo Snake can strike is 5 horizontal spaces
left or right of bag center or 4 vertical spaces above or below
it.
Delay adjustments - You might get a better score if you pace
yourself and become selective, rather than taking every snatching
opportunity that comes along. Remember the one who gets the
highest score without dying is the winner.
Competition - SNAKE31 is fun to play by yourself; but the real
challenge is to play against others. The data file automatically
saves the highest 20 scores. Play against your buddies; organize
a local contest.
CONTEST: INTERNATIONAL
The $10,000.00 International SneeSnoo Snake Snagging Contest
rules are follows:
1. Contestants must be registered users,
2. Details of the contest will be sent to all registered users
after the number of registrants exceeds 5,000 people.
4
SneeSnoo Snake V3.1 Documentation, (C) 1987 Bruce L. Rosenberg
3. Following notification, all registrants who wish to apply for
the contest must complete the official application form and
enclose a notarized printout of their snake.dat file containing
their attestedly authentic highest scores with Snake Version 3.1.
4. The data from these returns will be summarized and returned
to all applicants. This enables the applicants to see how their
scores compare to others.
5. All those deciding to compete must send an entry fee (amount
to be determined) to cover cost of conducting the contest.
6. The total prize will be $10,000.00, which is one quarter of
the gross income from the 5000 $8.00 registration fees. This
will be split three ways as follows: 1ST PRIZE $5,000.00; 2ND
PRIZE $3,000.00; and 3RD PRIZE $2,000.00.
7. The contest will be conducted in Atlantic City, NJ.
Contestants must pay for their own transportation and local
accommodations.
8. Further details and registrant counts will be included in
future releases of SNEESNOO SNAKE TM.
CONTEST: LOCAL
The Computer Society of Stockton State College and the South
Jersey IBM PC Users Group are planning a Stockton Computer Fest
in October 1987. There are tentative plans to conduct a SneeSnoo
Snake TM Contest during this Computer Fest. Prizes will be
awarded to the highest scorers.
INTELLECTUAL PROPERTY AND COMMERCIAL INFORMATION
This game was written in TurboPascal (TM Borland International).
It consists of about 1200 lines of code. Although copyrighted by
and intellectual property of the author, Bruce L. Rosenberg,
approval is given for noncommercial use and distribution by
users' groups (at a nominal fee) and for placing on private
computer bulletin boards. Consideration will be given to offers
from commercial firms regarding licensing on a royalty basis.
Send a check for $8.00 to register and receive the latest version
plus an on-disk copy of the SNEESNOO SNAKE TM pascal source code.
Registrants will be entered into a computer data base. The above
offer is for personal use and does not constitute a license for
commercial use.
Send inquiries and checks to :
Bruce L. Rosenberg
23 N. Chelsea Avenue
Atlantic City, NJ 08401
5
SneeSnoo Snake V3.1 Documentation, (C) 1987 Bruce L. Rosenberg
Any suggestions for improvements or ideas for games can be mailed
to the above address, via voice phone evenings at (609) 345-
4712, or leave message on Compuserve, 73547,402.
TROUBLE SHOOTING Q&A
Q1. Sometimes the bag movement keys don't work; why?
A1. You inadvertently hit NumLock, Hit NumLock again.
Q2. When the head was in the bag, I hit the F10 key to close it,
but the snake still bit me, how come?
A2. The head was outside when the bag closed. There can be a
slight delay between hitting the key and the bag closing. You
must anticipate this when you hit F10 to close it.
Q3. My score is high early in the game and then goes down. Why?
A3. Your score is computed as the number of snakes bagged (1 for
nonpoisonous, 4 for poisonous) less the number of snakes lost due
to getting bitten. This result is then divided by the elapsed
time. So if you have a score of 25 snakes per minute at the end
of the first minute and neither get bitten nor snag a snake
during the remainder of the second minute, your final score will
be 12.5 snakes per minute. You can't let up for a single second!
Q4. How come the snake keeps biting me?
A4. Work on your accuracy and ability to anticipate where the
snake will move. Pace yourself and don't get trigger-happy.
Q5. My score never gets on the top 20 list. Why?
A5. You need to improve your skill or reset the score file using
option 5 from the main menu.
Q6. My boss caught me playing this game at work. How can I stay
out of trouble?
A6. Function key, F1 immediately exits the game and returns to
the DOS prompt. Next time select the no-sound option, Dummy!
REVISION INFORMATION
Version 3.1 08/02/87 - Changed key for closing bag to Spacebar
instead of F10. F10 is awkward to use on the PC Jr. and keyboards
with function keys across the top. Limited maximum delay to 240,
since, for novices, the game was slowing down too much.
Version 3.0 06/27/87 - Made snake a linked list instead of a 2D
array. Made game speed increase as skill increases. It now
adapts to both machine speed and the persons' skill. This is a
major improvement in the game. Restructured code.
Version 2.9 06/03/87 - Improved bag movement procedure by
incrementing movement by 1, nbj times. This permits the bag to
move to the screen extremes. Changed bag symbol.
6
SneeSnoo Snake V3.1 Documentation, (C) 1987 Bruce L. Rosenberg
Version 2.8 02/01/87 - Changed back to the standard keypressed
and read(kbd,ch) actions, which along with cbreak are working
well. Position of cbreak is critical, see comments in source
code for proc menu.
Version 2.7 01/31/87 - Finally got good keyboard action. Must
use "Cbreak := false;" before the chkkbd; keydo; routine and then
"Cbreak := true;" after it. This has the effect of deactivating
break checking, $C-, during keyboard sensing. In $C+ the keyboard
buffer gets emptied in order to look for a ^C. Improved the
death display and shortened it. Changed so after dying go back
to the menu instead of to DOS. This required using "if dying
then EXIT;" several times to retrace the original path through
the calling procedures back to the menu.
Version 2.6 01/25/87 - Instead of "if keypressed then read(kbd,
improvement in keyboard action, however. Various improvements
suggested by Wayne Wolfe. Bag brightens when bagshut and takes
on color of snake head when snake bagged. Added cursor
suppression for both mono or c/g.
Version 2.5 01/19/87 - Made snakebiz and bagbiz independent of
each other. Both are now called from proc playgame. Snakebiz
does not call bagbiz; but bagbiz calls snakebiz for the snake
dance after biting.
Version 2.4 01/17/87 - Added fanfare for bagging venomous snake.
Version 2.30 01/16/87 - Bag symbol changes to appropriate snake
head & color when bitten. Plotbag changed so only pass 2 instead
of 4 parameters. Use of Quickeys.com speeds up cursor. Fastout
added for function 7 normal exit and F1 key.
Version 2.20 01/15/87 - Changed bag back to V2.0 way while
eliminating 1 or 2 additions/subtractions in each bag move and
halving the number in each bag plot. Changed as many integer
variables to byte as possible to increase speed. Made snake
trail array 10 chars long. Shortened sound durations.
Initialized trail array & deltx etc.in playgame to eliminate
stray bits of snake on initial startup.
Version 2.10 01/14/87 - Changed Trail from 2 - 1D arrays to 1 -
2D array. This sped-up game. Changed bag to 3D array; but this
reduced game speed.
Version 2.00 01/13/87 - Make snake deadly at times, if bitten
twice then die; but get 4 points if bag it. Speed-up menu.
Improve introductory screen.
Version 1.09 01/09/87 - Hide cursor during playgame. Colored
border added. Should change so don't use recursion, i.e.,
snakebiz calls bagbiz which calls snakebiz.
Version 1.08 01/08/87 - Improved score bar update. Changed
vertical bag increment "bagjmpy".
7
SneeSnoo Snake V3.1 Documentation, (C) 1987 Bruce L. Rosenberg
Version 1.07 01/08/87 - Scores updated every 2 seconds. Score bar
given background.
Version 1.06 01/04/86 - Minor screen changes, added DOC file.
Added score file reset to options area. Score file now declared
only once. Fixed problems when aborting a game.
Version 1.05 01/02/87 - Added F1 to abort game if boss comes in
during play.
Version 1.04 12/24/86 - Made improvements suggested by Dave
Schubert.
Version 1.03 12/22/86 - Made improvements suggested by Tom
Zurinskas. Thanks are due to my Pascal instructor, Mary Wall,
who suggested writing a game for a term project.
8